package main

import "fmt"

const pi = 3.1415926
const e = 2.71

// 多个常量支持一起，如果下面的值和上面的值相同，就可以省略
const (
	a = 10
	b
	c
)

// iota 类似于其他语言的枚举制
/*
1、遇到const值为0
2、每加一行加1
*/
const (
	n1 = iota
	n2
	n3
)

func main() {
	/*
		从定义之后就是不会再改变的量了
	*/
	fmt.Println(a, b, c) // 10,10,10
	// 应用 ：利用iota声明存储的单位常量
	const (
		_  = iota //0
		KB = 1 << (10 * iota)
		MB = 1 << (10 * iota)
		GB = 1 << (10 * iota)
		TB = 1 << (10 * iota)
		PB = 1 << (10 * iota)
	)

	// 用_跳过
	const (
		s1 = iota
		_
		s3 = iota
	)
	fmt.Println(s1, s3)

	// 插队
	const (
		b1 = iota
		b2 = 100
		b3 = iota
	)
	fmt.Println(b1, b2, b3)

	const (
		d1, d2 = iota + 1, iota + 2
		d3, d4
	)
	fmt.Println(d1, d2, d3, d4)
}
